The most important factor of performance of a memory is its access time. The time spent from when a microprocessor issues an instruction to get address data through when a memory responds to transmit data to the microprocessor to when the microprocessor actually receives the data is the access time of the memory.
A nonvolatile storage medium uses a page composed of a plurality of bytes as the unit for storage and readout of data. Each page for data access has a physical address to represent the space order in the nonvolatile storage medium, e.g., the position of physical blocks in a static random access memory (SRAM). Simultaneously, each block records a logical address marked by the file system to let each physical address have a corresponding logical address.
As shown in FIG. 1(a), a block 10 of a conventional memory can be divided into a plurality of pages (usually 16 or 32 pages). Each page has a plurality of bytes (usually 512 bytes). When writing data into the nonvolatile memory, it is uncertainly to start writing from the first page. As shown in FIG. 1(b), 3 pages of data have been written into the middle section of the block 10. Before the nonvolatile memory is used (i.e., writing data into a page of the block 10), one must make sure the block 10 is blank for writing in data. Therefore, it is necessary to find out a blank block 10 when writing in data. Because it is uncertainly starting from the first page of the block 10 when writing in data before, each page needs to be read in turn to exactly know whether the block 10 is blank or not. Because each page in each block needs to be searched when writing in data each time, the search time is long, letting the speed of data access of the memory be slow.
Accordingly, the present invention aims to propose a method for quickly detecting the state of a nonvolatile storage medium to resolve the above problems in the prior art.